#ifndef pista_h
#define pista_h

#include <stdint.h>
#include "genericv.h"
#include "stub.h"


typedef struct {
  GenericVar id;
  GenericVar nome;
  GenericVar imagem;
  GenericVar num_setores;
  GenericVar posicao;
} pista;



typedef struct {
  pista* (*create)();
  FieldEntry* (*getFields)();
  int64_t (*get_id)(pista *this);
  void (*set_id)(pista *this, int64_t novo);
  char* (*get_nome)(pista *this);
  void (*set_nome)(pista *this, char* novo);
  char* (*get_imagem)(pista *this);
  void (*set_imagem)(pista *this, char* novo);
  int32_t (*get_num_setores)(pista *this);
  void (*set_num_setores)(pista *this, int32_t novo);
  char* (*get_posicao)(pista *this);
  void (*set_posicao)(pista *this, char* novo);
} pistaInterface;

extern pistaInterface pistaI;

#endif
